package com.atguigu.gmall.product.service;

import com.alibaba.fastjson.JSONObject;
import com.atguigu.gmall.model.product.BaseAttrInfo;
import com.atguigu.gmall.model.product.BaseCategoryView;
import com.atguigu.gmall.model.product.BaseTrademark;
import com.atguigu.gmall.model.product.SkuInfo;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface ApiSkuInfoService {
    /**
     * 根据skuid获取详情数据
     * @param skuId
     * @return
     */
    SkuInfo getAttrValueList(Long skuId);

    /**
     * 根据skuid获取最新sku价格
     * @param skuId
     * @return
     */
    BigDecimal getSkuPrice(Long skuId);

    /**
     * 查询商品分类id，使用sql创建一个view
     * @param category3Id
     * @return
     */
    BaseCategoryView getCategoryView(Long category3Id);

    /**
     * 商品切换
     * @param spuId
     * @return
     */
    Map getSkuValueIdsMap(Long spuId);

    // sku对应的平台属性，也就是规格
    List<BaseAttrInfo> getAttrList(Long skuId);

    /**
     * 获取全部分类信息
     * @return
     */
    List<JSONObject> getBaseCategoryList();

    /**
     * 查询品牌信息，根据品牌id
     * @return
     */
    BaseTrademark getBaseTradeMark(Long tmId);
}
